#ifndef SQLPARSER_DELETE_STATEMENT_H
#define SQLPARSER_DELETE_STATEMENT_H

#include "SQLStatement.h"

// Note: Implementations of constructors and destructors can be found in statements.cpp.
namespace ment {

	// Represents SQL Delete statements.
	// Example: "DELETE FROM students WHERE grade > 3.0"
	// Note: if (expr == nullptr) => delete all rows (truncate)
	struct DeleteStatement : SQLStatement {
		DeleteStatement();
		virtual ~DeleteStatement();
		virtual std::string execute(std::string username="default");

		//9.11.4
		int errorLine = -1;
		int errorColumn = -1;

		//9.12.1
		int whereLine = -1;
		int whereColumn = -1;

		int eqOpLine = -1;
		int eqOpColumn = -1;

		char* schema;
		char* tableName;
		Stat* stat;
	};

} // namespace hsql

#endif
